Search engine sites are extremely popular on the World Wide Web (WWW), as they allow users to quickly sift through billions of documents on the Internet. Many search engines search the WWW and/or newsgroups for one or more terms, keep an index of the terms they find and where they find them, and allow users to look for terms found in the index. A term is any word or group of words, such as a phrase or a combination of one or more words or phrases, that is treated as a unit when searching for documents containing the term.
There are two important phases of search engine operation: indexing and querying. Indexing is the preprocessing of documents in such a way as to make high-quality querying efficient in terms of time and cost. Indexing generally includes recording the position of each term in the documents in a manner that enables efficient retrieval during querying. Querying is the specification by a search engine user of a set of requirements to be met by a candidate document, and the presentation to the user of some set of documents that, according to some quality criteria, best match the user's specification.
A type of querying that is particularly helpful to search engine users is number-range searching. While conventional search engines allow a user to find a particular number, these search engines generally do not allow a user to search for a range of numbers, where an occurrence of any number in the range is of interest to the user. Some exemplary number-range searches include but are not limited to: product information (e.g., televisions at least 30 inches; 80 to 120 watt bulbs, etc.); historical information (e.g., wars between 1800 and 1900); age-related information (e.g., games for children 8 to 12 years old); pricing information (e.g., digital cameras between $200 and $500); health information (e.g., body weight over 190 lbs.); particular real numbers (e.g., any number between 3.14 and 3.15 to find the value of pi); outlier numbers (e.g., price-to-earnings ratio of over 100); lists (e.g., top 3-10 lists); resumes (e.g., grade point average of over 3.8); and nearby businesses (e.g., anything in the 2000-2300 block of Main Street, U.S.A.).
Accordingly, what is needed is a system and method of searching number ranges that allows a user to search for a range of numbers, where an occurrence of any number in the range is of interest to the user. Such a system and method should minimize the use of index space and accommodate a large range of numbers with high search resolution (where high resolution means having the ability to distinguish numbers that are close in value to one another).